/**
 * 系统管理员信息管理
 * @author rxliuli
 */
class SysUser {
    /**
     * 构造函数
     * @param {Object} [option] 可选参数
     * @param {String} [option.id] 编号
     * @param {String} [option.loginName] 登录账号，唯一
     * @param {String} [option.regMail] 认证邮箱
     * @param {String} [option.password] 密码，md5 + 盐 hash
     * @param {Date} [option.createTime] 创建时间
     * @param {Date} [option.lastLoginTime] 上次登录时间
     * @param {String} [option.loginSource] 登录来源, 这里填登录用户的ip地址
     * @param {Integer} [option.status] 状态， 1：启用，2：禁用.   默认启用
     * @param {Integer} [option.userType] 用户类型， 1：超级管理员，2：普通管理员
     * @param {...Object} [option.args] 其他参数
     */
    constructor({
                    id,
                    loginName,
                    regMail,
                    password,
                    createTime,
                    lastLoginTime,
                    loginSource,
                    status,
                    userType,
                    ...args
                } = {}) {
        this.id = id
        this.loginName = loginName
        this.regMail = regMail
        this.password = password
        this.createTime = createTime
        this.lastLoginTime = lastLoginTime
        this.loginSource = loginSource
        this.status = status
        this.userType = userType
        Object.assign(this, args)
    }
}